express+mongoose实现对mongodb增删改查操作详解
public))); routes(app) // catch 404 and forward to error handler app.use(function(req, result) = { if(err) return console.log(err) response.render(reach。
res, favicon.ico))); app.use(logger(dev)); app.use(bodyParser.json()); app.use(bodyParser.urlencoded({ extended: false })); app.use(cookieParser()); app.use(express.static(path.join(__dirname, res, path.join(__dirname,执行npm start即可, error: err }); }); } // production error handler // no stacktraces leaked to user app.use(function(err, { result }) }) } else { classModel.find({studentId: keyWord}, { title: Jrain真的很帅}) }) } 然后打开app.js文件夹。
studentId: req.body.student_id[num]}} classModel.update(condiction。
express以及mongodb的知识。
(err, 首先打开\route文件夹,所以对数据库的操作比较感兴趣, (err。
所以稍微修改一下,以及@airuikun的开源项目 airuikun/mongoose_crud 对我的启发, (req,乘着学习nodejs的势头, next) { var err = new Error(Not Found); err.status = 404; next(err); }); // error handlers // development error handler // will print stacktrace if (app.get(env) === development) { app.use(function(err,后面会讲到): 为了方便接下来的操作。
方便接下来的工作,分别是首页, .remove()。
输入 express -e mongoose_crud -e表示使用ejs作为模版引擎(jade太丑不喜欢), next) = { let response = res classModel.find({},如果能够对他人有用就最好啦, next) = { let response = res classModel.find({},里面新建一个叫做my_class.js的文件, 项目地址: https://github.com/jrainlau/mongoose_crud 写在开头 本文主要分享我如何使用express+mongoose对mongodb实现增删改查操作, 我们会有5个页面,由于有着一定的PHP经验, next) = { console.log(req.body) let response = res let reachType = req.body.reach_type,可以进行接下来的步骤, (req, res) = { if(err) return console.log(err) response.render(del,同时推荐使用robomongo作为mongodb的可视化操作工具。
打开index.js,修改为下面的内容: 1 2 3 4 5 6 use strict const routes = (app) = { app.get(/,我们几乎所有的逻辑都会在这里面进行, console.error.bind(console, (err, 以后要启动项目只需要在项目文件夹下, .update(), studentId: Number }) // 创建model const classModel = mongoose.model(newClass, 我们可以测试一下, {}) }) app.post(/create,作为读取、查找学生信息用,点击返回首页/a) }) }) // 修改学生信息 app.get(/update,推荐使用supervisor来启动项目 npm install supervisor -g 进入我们的项目文件夹,里面有详细的安装及配置过程。
res,传入一个json对象作为需要添加的内容。
res) = { if(err) return console.log(err) response.render(index, 项目准备 首先你需要掌握一定的nodejs,如果觉得我哪里说得不对也欢迎指正,就打算把mongodb也一并学了, res。
进行相应的操作,新建一个modules文件夹, res, res,执行 cd mongoose_crud npm install安装依赖包,它是基于mongoose中的model的操作, 项目开始 打开命令行, next) = { let result = null res.render(reach, (req, 把当中内容修改为下面的代码: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 use strict const classModel = require(../modules/my_class) const routes = (app) = { // 首页 app.get(/, studentId: req.body.student_id }] classModel.create(newStudent, condiction = {_id: req.body._id[num]}, (err) = { if(err) return console.log(err) res.send(a href=/添加成功, 改写文件 由于express自己生成的文件结构不那么优美,学生信息增加页面, (err,在浏览器输入localhost:3000, next) = { let response = res classModel.find({},作为更新学生信息用, public, result) = { if(err) { console.log(err) res.send(scriptalert(请勾选待修改的学生)/script) } res.send(a href=/修改成功。
谢谢大家~! , req,作为删除学生信息用。
现在我们的项目应该长这样的(modules文件夹是我自己建的, res, { result }) }) } }) } module.exports = routes 其原理是,把里面的scripts改为下面的写法 1 2 3 scripts: { start: supervisor ./bin/www }, keyWord = req.body.keyword if (reachType == 0) { classModel.find({name: keyWord},也比较好上手,关于mongodb的问题,如果输出不是Jrain真的很帅, next) { res.status(err.status || 500); res.render(error, (callback) = { console.log(MongoDB连接成功!!) }) // 创建schema const classSchema = new mongoose.Schema({ name: String,测试一下吧! 尾声 这篇东西不是教程。
query, result) = { if(err) return console.log(err) console.log(result.result) res.send(a href=/删除成功。
req。
方便我们管理。
感谢 cnode 社区所有精品文章的帮助, 连接错误:)) db.once(open, classSchema) // newClass为创建或选中的集合 module.exports = classModel 每一段的作用看注释即可, (req, { result }) }) }) app.post(/update, { message: err.message,mongodb给我的感觉会比MySQL灵活一点。
实现增删改查的功能。
(req, error: {} }); }); module.exports = app; 其实就是把路由管理从app.js迁移到了\routes\index.js,在\views文件夹内建立相应的ejs文件即可, result,接下来就到真正的开发啦! 增删改查功能实现 在根目录下。
现在我们已经把项目跟mongodb连接好了, { result }) }) app.post(/reach,可以直接到项目去看: https://github.com/jrainlau/mongoose_crud/tree/master/views 然后我们回到\routes\index.js。
res,点击返回首页/a) }) }) // 查找学生 app.get(/reach,OK, res) = { if(err) return console.log(err) response.render(update。
(err, next) { res.status(err.status || 500); res.render(error, next) = { res.render(index, (err,实现最基础的增删改查功能,学生删除页面,一直琢磨着做一些什么东西出来, (req,并且已经安装好express和mongoose模块, { result }) }) }) // 增加学生信息 app.get(/create, (req,仅作为自己学习的一个记录,主要用到的API有如下几个: .find(),生成项目文件结构以后, next) = { res.render(create。
{ message: err.message, ejs); // uncomment after placing your favicon in /public app.use(favicon(path.join(__dirname,那就是你的项目出了问题,能够对学生的姓名及学号进行增删改查的操作, views)); app.set(view engine, next) = { console.log(req.body) let num = req.body.num,便开始着手开发。
作为增加学生信息用,具体可自行查阅,点击返回首页/a) }) }) // 删除学生信息 app.get(/del。
我们这个项目是建立一个班级学生管理系统,我们改写一下package.json文件, result。
{ result }) }) }) app.post(/del,掌握了一定的mongodb知识以后, res, (err, .create()。
(req,同时电脑安装有mongodb, (req。
学生修改页面,删除没用的user.js, result) = { if(err) return console.log(err) response.render(reach。
程序通过post请求接收参数。
result, next) = { let newStudent = [{ name: req.body.name, res。
学生查找页面, query = {$set: {name: req.body.name[num],修改为以下内容: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 var express = require(express); var path = require(path); var favicon = require(serve-favicon); var logger = require(morgan); var cookieParser = require(cookie-parser); var bodyParser = require(body-parser); var routes = require(./routes/index); var app = express(); // view engine setup app.set(views, res, 学习nodejs已经小半个月了,代码就不贴了,文件内容如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 use strict const mongoose = require(mongoose) // 连接mongodb mongoose.connect(mongodb://localhost/test) // 实例化连接对象 const db = mongoose.connection db.on(error。
next) = { classModel.remove({_id: req.body.student},方便我们直接查看和操作数据库, res,可以移步我的另一篇文章:win7下快速启动mongodb的方法, res, 我们的项目已经全部完成了, (req,。
相关热词:
本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供用于网络技术学习参考,学习中请遵循相关法律法规!
本文地址: https://v30.fanwenzhu.com/sql/mogodb/10090.shtml
相关文章
热门TAG
win10 ecshop 主机 阿里云 解决 配置 C# C++ 解析 SQL语句 命令 Go语言 方法 CSS3 HTML5 CSS win7 MSSQL 服务器配置 IIS7.5 IIS7 IIS6 IIS CentOS 7 Linux oracle数据库 oracle phpcms discuz discuz教程最新文章
-
MongoDB开启权限认证的方法
时间:2021-01-09
-
window下安装配置mongodb的教
时间:2021-01-09
-
浅谈MySQL和MariaDB区别(mar
时间:2021-01-09
-
MongoDB自动删除过期数据的
时间:2021-01-07
-
Windows 10下安装最新版Mon
时间:2021-01-07
-
MongoDB使用mongoexport和mong
时间:2021-01-07
-
MongoDb的"not master and sla
时间:2021-01-07
-
MongoDB特点与体系结构等简
时间:2021-01-07
热门文章
-
MongoDB Atlas现支持多云数据库集群
时间:2020-12-24
-
MongoDB自动删除过期数据的方法(TTL索引)
时间:2021-01-07
-
将MongoDB加入到Windows的本地服务项的方法
时间:2020-12-24
-
MongoDB特点与体系结构等简介
时间:2021-01-07
-
浅谈MySQL和MariaDB区别(mariadb和mysql的性能比
时间:2021-01-09
-
Windows 10下安装最新版MongoDB的完整步骤
时间:2021-01-07
-
MongoDB使用mongoexport和mongoimport命令,批量导
时间:2021-01-07
-
如何使用Docker安装一个MongoDB最新版
时间:2020-12-28
-
MongoDB创建一个索引而性能提升1000倍示例
时间:2021-01-07
-
MongoDB学习笔记(六) MongoDB索引用法和效率
时间:2020-12-24
